The present invention relates to an automatic performing apparatus and an electronic instrument capable of executing an automatic musical performance by generating musical tones in accordance with external events.
Conventionally, an electronic instrument has been used which is capable of executing an automatic musical performance by sequentially reading out song data, which are previously stored in a memory, and generating musical tones in response to events from the outside (for example, the action of pressing on keys of a keyboard).
By using such an electronic instrument, an automatic musical performance can be carried out only by providing simple external events. Accordingly, anyone can enjoy playing this musical instrument without learning how to play it.
More particularly, such an electronic instrument can provide children with an opportunity to get familiar with music. Furthermore, the aged and the physically handicapped, who will often have difficulty in learning to play a musical instrument, are also able to enjoy playing a musical instrument by means of such an electronic instrument.
However, in conventional electronic instruments, only one musical tone (or sound) is generated in response to one external event. Therefore, in order to achieve an automatic musical performance, it is necessary for a user to provide external events for all pieces of note data (that is, data relating to generation of musical tones among the song data stored in the memory).
Consequently, it has been sometimes difficult for a user to carry out an automatic musical performance with such a conventional electronic instrument, especially in the case of a complicated arrangement, in which case it is difficult to properly provide external events.
Also, in the case of a song consisting of a melody and accompaniments, if external events are provided only at the timing of the melody, musical tones for the accompaniments are not generated since they do not accord with each other in timing, which has been another problem with the conventional electronic instrument.
The present invention was made to solve the aforementioned problems. More particularly, the object of the present invention is to provide an automatic performing apparatus and an electronic instrument with which a user can achieve an automatic musical performance without difficulty only by providing external events, for example, at certain intervals, or correspondingly only to a melody, even in the case of a complicated arrangement.
In order to attain this object, there is provided an automatic performing apparatus for executing an automatic musical performance based on song data in response to external events, wherein the song data are segmented into prescribed sections; at the time of execution of an automatic musical performance, each time an external event is provided, the automatic musical performance progresses within a section corresponding to the external event provided; and tempo of the automatic musical performance is set on the basis of intervals between the external events.
In this automatic performing apparatus, the song data are segmented into the prescribed sections, and at the time of execution of an automatic musical performance, the automatic musical performance is executed by the section in response to each external event.
Accordingly, it is not necessary for a user to provide the external events with respect to all pieces of note data, and instead, it is only necessary for him/her to provide an external event, for example, with respect to each section of the song data, which enables the user to carry out an automatic musical performance more easily.
Particularly, in the case of a section comprising two or more pieces of note data, musical tones can be automatically generated based on the two or more pieces of note data in response to only one external event. Accordingly, compared to cases where the external events need to be provided with respect to all pieces of note data, the number of provision of such external events can be reduced.
Also, in the automatic performing apparatus of the invention, the tempo of the automatic musical performance is set on the basis of intervals between the external events. In other words, when the external events are provided with a short interval, the automatic musical performance is executed at a fast tempo. On the contrary, when the external events are provided with a long interval, the automatic musical performance is executed at a slow tempo.
Consequently, the tempo of the automatic musical performance can be freely changed by varying the intervals between the external events.
Furthermore, due to such changes in the tempo of the automatic musical performance depending on the intervals between the external events, undesired situations, for example, in which the next external event is provided before completion of generation of musical tones based on all pieces of note data within a certain section or, on the contrary, in which there is an unnatural pause inserted between completion of generation of musical tones based on all pieces of note data within a certain section and provision of the next external event, are less likely to occur compared to cases where the automatic musical performance is progressed at a fixed tempo.
Here, the note data mean some information, for example, that is part of the song data and gives the automatic performing apparatus instructions to generate musical tones.
In the foregoing automatic performing apparatus, each of the prescribed sections may correspond to one beat of the song data.
In such an automatic performing apparatus, each section corresponding to each external event is equivalent to one beat of a song, and consequently, each time an external event is provided, the automatic musical performance is progressed by the beat.
Accordingly, by using such an automatic performing apparatus, a user can carry out an automatic musical performance only by providing external events at intervals of one beat, which is a very easy operation for the user.
Alternatively, in the foregoing automatic performing apparatus, each of the prescribed sections may comprise a piece of note data for a melody and note data for accompaniments following the piece of note data for the melody.
In such an automatic performing apparatus, each section corresponding to each external event includes a piece of note data for a melody and note data for accompaniments following the piece of note data for the melody, and consequently, each time an external event is provided, a melody part and accompaniment parts accompanying the melody part are both automatically performed.
Accordingly, a user can achieve an automatic musical performance by providing external events only at the timing of the note data for a melody, and it is thus unnecessary for the user to provide any external events with respect to the note data for accompaniments.
Such an automatic performing apparatus is thus easy to operate for the user.
In the foregoing automatic performing apparatus, the tempo of the automatic musical performance may be set by means of a ratio of an assumed value of the interval between the external events to an actual measurement thereof.
Here is also provided, by way of example, a method of setting the tempo.
According to this tempo setting method, for example, an assumed value (i.e., xe2x80x9ctap clockxe2x80x9d) of an interval between the external events is compared with an actually measured value (i.e., xe2x80x9ctap timexe2x80x9d) thereof. Then, if the actually measured interval is shorter, the tempo is set to be faster than the current tempo. On the contrary, if the actually measured interval is longer, the tempo is set to be slower than the current tempo.
More specifically, the tempo of the automatic musical performance (i.e., xe2x80x9cnew tempoxe2x80x9d) is reset, for example, by means of the following formula, each time an external event is provided:
(New Tempo)=(Old Tempo)xc3x97(Tap Clock)/(Tap Time)
The xe2x80x9cold tempoxe2x80x9d may be a tempo determined and set by means of the above formula when the previous external event is provided. As to setting of a first tempo set immediately after the automatic musical performance is started, for example, a value previously recorded in the song data may be utilized as the first tempo.
In such an automatic performing apparatus, the tempo of the automatic musical performance is automatically reset in accordance with changes of the intervals between the external events, and consequently, it is possible for a user to freely change the tempo of the automatic musical performance by varying the intervals between the external events.
Also, due to such changes in the tempo of the automatic musical performance depending on the intervals between the external events, undesired situations, for example, in which the next external event is provided (in other words, the automatic musical performance within the next section is started) before completion of the automatic musical performance within a certain section or, on the contrary, in which there is an unnatural pause inserted between completion of the automatic musical performance within a certain section and provision of the next external event (in other words, start of the automatic musical performance within the next section) are less likely to occur, compared to cases where the automatic musical performance is progressed at a fixed tempo.
The aforementioned assumed value may be, for example, a value previously recorded in the song data as an assumed value of an interval between the external events. This assumed value may be the same for all of the intervals between the external events, or may be different depending on each external event (for example, depending on a first, second, . . . or nth external event in the automatic musical performance).
Alternatively, the aforementioned assumed value may be, for example, a difference between a step time (i.e., information included in each piece of note data, which represents timing for generating a musical tone based on each piece of note data) of note data corresponding to an external event and a step time of note data corresponding to the next external event.
The aforementioned actual measurement (or actually measured value) may be, for example, the clock number of a timer which operates at a prescribed tempo between provisions of two external events. The tempo of the timer may be, for example, the xe2x80x9cold tempoxe2x80x9d mentioned above.
Alternatively, in the foregoing automatic performing apparatus, the tempo of the automatic musical performance may be set by means of a tempo determined by the interval between the external events.
Here is also provided, by way of example, another setting method of the tempo.
According to this setting method, for example, a tempo xe2x80x9cFxe2x80x9d at which external events are provided is calculated on the basis of an interval between the external events, and the tempo of the automatic musical performance is set by means of the tempo xe2x80x9cFxe2x80x9d.
For example, each time an external event is provided, the tempo of the automatic musical performance (i.e., xe2x80x9cnew tempoxe2x80x9d) is reset by means of the following formula:
(New Tempo)=xcex1(Old Tempo)+(1xe2x88x92xcex1) F
The xe2x80x9cold tempoxe2x80x9d is, for example, a tempo set by means of the above formula when the previous external event is provided. As to a first tempo set immediately after the automatic musical performance is started, for example, a value previously recorded in the song data may be utilized as the first tempo.
The above xe2x80x9cxcex1xe2x80x9d is a numerical value larger than zero and smaller than one, which may be, for example, 0.5. If the value of xe2x80x9cxcex1xe2x80x9d is larger, a contribution of xe2x80x9cFxe2x80x9d to the xe2x80x9cnew tempoxe2x80x9d becomes smaller, thereby making a change of the xe2x80x9cnew tempoxe2x80x9d gradual. On the contrary, if the value of xe2x80x9cxcex1xe2x80x9d is smaller, it is possible to immediately change the xe2x80x9cnew tempoxe2x80x9d in accordance with the change of the interval between the external events.
In cases where the interval between the external events is, for example, 0.5 second, the above xe2x80x9cFxe2x80x9d is calculated as follows: F=60/0.5=120 (times per minute)
In such an automatic performing apparatus, the tempo of the automatic musical performance is automatically reset according to changes of the intervals between the external events, and consequently, a user can freely change the tempo of the automatic musical performance by varying the intervals between the external events.
Also, due to such changes in the tempo of the automatic musical performance depending on the intervals between the external events, undesired situations, for example, in which the next external event is provided (in other words, the automatic musical performance within the next section is started) before completion of the automatic musical performance within a certain section or, on the contrary, in which there is an unnatural pause inserted between completion of the automatic musical performance within a certain section and provision of the next external event (in other words, start of the automatic musical performance within the next section) are less likely to occur, compared to cases where the automatic musical performance is progressed at a fixed tempo.
In the foregoing automatic performing apparatus, the external events may include information on strength of tones to be generated.
In such an automatic performing apparatus, information on strength of tones to be generated (i.e., velocity information) is supplied by way of the external events, and consequently, for example, when an external event is provided, the volume of musical tones to be generated in the automatic musical performance is determined in accordance with such velocity information included in the provided external event.
More specifically, by way of example, the volume of musical tones to be generated in the automatic musical performance may be determined and set in the following manner.
Data on the volume of musical tones (i.e., velocity value) is recorded in each piece of note data, and the volume of musical tones to be generated based on each piece of note data is basically determined in accordance with this velocity value recorded therein at the time of execution of the automatic musical performance. If the velocity information included in an external event is larger than a prescribed value, the velocity value in each piece of note data within a section corresponding to that external event is corrected to be a value one point two (1.2) times the original velocity value. Then, musical tones are generated on the basis of the corrected velocity value.
On the contrary, if the velocity information included in an external event is smaller than a prescribed value, the velocity value in each piece of note data within a section corresponding to that external event is corrected to be a value zero point seven (0.7) times the original velocity value, and musical tones are then generated based on the corrected velocity value.
In such an automatic performing apparatus, the volume of musical tones can be controlled, for example, per section by means of the velocity information included in each external event.
The external events including the velocity information may be, for example, the action of pressing on keys of a keyboard, operation of a panel switch (i.e., panel SW) in an operation panel, or key-on information inputted as MIDI data. Otherwise, operational information on an analogue device, such as a bender, may be utilized as the external events.
The velocity information may be, for example, a parameter representing strength (or velocity) with which any key of the keyboard is pressed on when the external events are the action of pressing on keys of a keyboard. Also, when the external events are the operation of a panel switch (i.e. panel SW) in an operation panel, the velocity information may be a parameter representing strength (or velocity) with which the panel SW is pressed on.
In the foregoing automatic performing apparatus, the external events may mean operation of pressing on keys of a keyboard.
In such an automatic performing apparatus, the automatic musical performance can be executed in response to a user""s action of pressing on any key of the keyboard to provide an external event.
In this case, the external events may be caused using all keys of the keyboard, or using particular keys only.
The automatic performing apparatus of the invention may, for example, be a keyboard instrument such as an electronic piano.
The keyboard may be a part of the automatic performing apparatus. Otherwise, it may be separated from the automatic performing apparatus and connected thereto by way of, for example, a MIDI terminal.
Alternatively, in the foregoing automatic performing apparatus, the external events may mean operation in an operation panel for operating the automatic performing apparatus.
In such an automatic performing apparatus, the automatic musical performance can be executed, for example, by operating a button provided in the operation panel, thereby causing an external event.
The operation panel may be a part of the automatic performing apparatus. Otherwise, it may be separated from the automatic performing apparatus and connected thereto by way of, for example, a MIDI terminal.